import { IMessageBase } from "../../Framework/MQ/IMessageBase";
import { MessageManager } from "../../Framework/MQ/MessageManager";
import { SerializeStream } from "../../Framework/Serialize/SerializeStream";
import { SEntityId } from "./SEntityId";
import { SPublicMiniPlayer } from "./SPublicMiniPlayer";
type int = number;
//class SCrossMassacreKillMsg
    
    export  class SCrossMassacreKillMsg extends IMessageBase
    {
        constructor(arg1: Boolean=false)
        {
            
            super();if (arg1) 
            {
                MessageManager.instance().regist(this);
            }
            return;
        }

        public /* override */ getType(): int
        {
            return this._type;
        }

        public /* override */ clone(): IMessageBase
        {
            return new SCrossMassacreKillMsg();
        }

        public /* override */ __write(arg1: SerializeStream): void
        {
            this.fromEntityId.__write(arg1);
            this.toEntityId.__write(arg1);
            this.fromMiniPlayer.__write(arg1);
            this.toMiniPlayer.__write(arg1);
            arg1.writeInt(this.toPlayerPosition);
            arg1.writeString(this.positionName);
            arg1.writeInt(this.fact);
            return;
        }

        public /* override */ __read(arg1: SerializeStream): void
        {
            this.fromEntityId = new SEntityId();
            this.fromEntityId.__read(arg1);
            this.toEntityId = new SEntityId();
            this.toEntityId.__read(arg1);
            this.fromMiniPlayer = new SPublicMiniPlayer();
            this.fromMiniPlayer.__read(arg1);
            this.toMiniPlayer = new SPublicMiniPlayer();
            this.toMiniPlayer.__read(arg1);
            this.toPlayerPosition = arg1.readInt();
            this.positionName = arg1.readString();
            this.fact = arg1.readInt();
            return;
        }

        public /* const */_type: int=870;

        public /* var */fromEntityId: SEntityId;

        public /* var */toEntityId: SEntityId;

        public /* var */fromMiniPlayer: SPublicMiniPlayer;

        public /* var */toMiniPlayer: SPublicMiniPlayer;

        public /* var */toPlayerPosition: int;

        public /* var */positionName: string;

        public /* var */fact: int;

        public static /* var */_regist: SCrossMassacreKillMsg;
    }

            SCrossMassacreKillMsg._regist = new SCrossMassacreKillMsg(true);
        